package com.kingyun.gpsinspection.purificationservice.dao.mapper.iam.adm;


import com.kingyun.gpsinspection.purificationservice.facade.model.BootstrapSearchBean;
import com.kingyun.gpsinspection.purificationservice.facade.model.iam.adm.AutoApply;

import java.util.List;

public interface AutoApplyMapper {
    /**
     * 删除
     *
     * @param autoApplyId
     * @return
     */
    int deleteByPrimaryKey(String autoApplyId);

    /**
     * 新增用车申请
     *
     * @param record
     * @return
     */
    int insert(AutoApply record);

    int insertSelective(AutoApply record);

    /**
     * 查询申请信息
     *
     * @param autoApplyId 车辆申请id
     * @return
     */
    AutoApply selectByPrimaryKey(String autoApplyId);

    /**
     * 更新申请信息
     *
     * @param record 车辆申请
     * @return
     */
    int updateByPrimaryKeySelective(AutoApply record);

    int updateByPrimaryKey(AutoApply record);

    /**
     * 个人申请列表
     *
     * @param bootstrapSearchBean
     * @return
     */
    List<AutoApply> queryList(BootstrapSearchBean bootstrapSearchBean);

    /**
     * 个人申请总条数
     *
     * @param bootstrapSearchBean
     * @return
     */
    Integer queryCount(BootstrapSearchBean bootstrapSearchBean);

    /**
     * 代办列表
     *
     * @param bootstrapSearchBean
     * @return
     */
    List<Object> searchByPIId(BootstrapSearchBean bootstrapSearchBean);

    /**
     * 代办总条数
     *
     * @param bootstrapSearchBean
     * @return
     */
    int totalCountByPIId(BootstrapSearchBean bootstrapSearchBean);

    /**
     * 查询已审批列表
     *
     * @param vacationApply
     * @return
     */
    List<AutoApply> queryProcessedList(AutoApply vacationApply);

    /**
     * 查询已审批列表总数量
     *
     * @param vacationApply
     * @return
     */
    Integer queryProcessedCount(AutoApply vacationApply);

    /**
     * 查询用车待办
     *
     * @param autoApply 用车信息类
     */
    Integer queryToDoCount(AutoApply autoApply);

    /**
     * 查询用车待办分页数据
     *
     * @param autoApply 用车信息类
     */
    List<AutoApply> queryToDoList(AutoApply autoApply);
}